package org.db.util;

import java.awt.AWTEvent;
import java.awt.EventQueue;

import javax.swing.JOptionPane;

/**
 * Hilfsklasse um Fehler zu verarbeiten und in der GUI darzustellen, die nicht
 * woanders im Programm gefangen und behandelt werden.
 * 
 * @author Lutz Schneider
 * 
 */
public class RuntimeExceptionHandler extends EventQueue {

	@Override
	protected void dispatchEvent(AWTEvent event) {
		try {
			super.dispatchEvent(event);
		} catch (Throwable t) {
			t.printStackTrace();

			String message = t.getMessage();
			if (message == null || message.length() == 0) {
				message = "Schwerwiegender Fehler: " + t.getClass();
			}

			JOptionPane.showMessageDialog(null, "Fehlerhafte Eingabe", message,
					JOptionPane.ERROR_MESSAGE);
		}
	}
}
